package com.itany.corejava.code09_集合.map集合;

import java.util.HashMap;

/**
 * @author MissChen
 * @version 1.0
 * @date 2023 年11月21日 14:53
 */
public class Test01_HashMap {
    public static void main(String[] args) {
        test01();
    }
    public static void test01(){

        // 定义一个使用默认容量16与默认加载因子是0.75
        HashMap<Integer,String> map=new HashMap<>();
        // HashMap<Integer,String> map2=new HashMap<>(10);
        // HashMap<Integer,String> map3=new HashMap<>(10,0.75F);
        System.out.println(map);


        //添加操作map.put(key,value)
        // key具有唯一性，如果key重复了，则覆盖原来的数据，相当于修改
        map.put(1,"jack");
        map.put(2,"coco");
        map.put(3,"cici");
        map.put(1,"huahua");

        // 理论上来key和value可以为null
        // 但是实际上不建议出现
        map.put(null,null);
        System.out.println(map);

        // get(key):获取，查询
        System.out.println("获取key为1的值:"+map.get(1));
        System.out.println("获取key为2的值:"+map.get(2));

        // remove(key)根据key删除指定元素
        map.remove(1);
        System.out.println(map);


        // containsKey(key)判断集合中是否包含指定的key
        System.out.println("集合中是否包含key为1的数据:"+map.containsKey(1));
        System.out.println("集合中是否包含key为2的数据:"+map.containsKey(2));

        // containsValue(value)判断集合中是否包含指定的value的数据
        System.out.println("集合中是否包含coco的数据:"+map.containsValue("coco"));
        System.out.println("集合中是否包含cici的数据:"+map.containsValue("cici"));

        // isEmpty()判断集合是否为空
        System.out.println("集合中是否为空:"+map.isEmpty());

        // size()
        System.out.println("集合中键值对的数量:"+map.size());

        //clear()清空
        map.clear();
        System.out.println(map);
        System.out.println("集合是否为空:"+map.isEmpty());
    }
}
